<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>constructor属性</title>
</head>

<body>
  <script>
    // ============================== constructor属性 ==============================
    // 1. constructor属性在原型对象里面
    // 2. constructor属性 指向原型对象的构造函数

    function Person(name) {
      this.name = name
    }

    // 原型对象
    console.log(Person.prototype)  
    console.log(Person.prototype.constructor)
    console.log(Person === Person.prototype.constructor)  // true
    
    
    // 3. 有什么使用场景呢？
    // Person.prototype.sing = function () {
    //   console.log('我会唱歌')
    // }
    // Person.prototype.dance = function () {
    //   console.log('我会跳舞')
    // }

    Person.prototype = {
      // 新的原型对象上没有constructor属性，所以需要手动添加一个
      constructor:Person,
      sing(){
        console.log('我会唱歌') 
      },
      dance(){
        console.log('我会跳舞')
      },
      eat(){
        console.log('我会吃饭')
      }
    }
    console.log(Person.prototype)
  
    
  </script>
</body>

</html>